// 版权归陈超所有

#pragma once

#include "CoreMinimal.h"
#include "AbilitySystemInterface.h"
#include "GameFramework/PlayerState.h"
#include "CC_PlayerState.generated.h"

class UAbilitySystemComponent;
class UAttributeSet;
/**
 * 
 */
UCLASS()
class CC_AURA_API ACC_PlayerState : public APlayerState ,public IAbilitySystemInterface
{
	GENERATED_BODY()

public:
	ACC_PlayerState();

	
	//重写接口函数，获取能力系统组件
	virtual UAbilitySystemComponent* GetAbilitySystemComponent() const override;

	//获取属性集
	virtual UAttributeSet* GetAttributeSet() const {return AttributeSet;};

protected:
	UPROPERTY()
	TObjectPtr<UAbilitySystemComponent> AbilitySystemComponent;

	UPROPERTY()
	TObjectPtr<UAttributeSet> AttributeSet;
	
};
